var http = require('http');
var url = require('url');
var fs = require('fs');
var querystring = require('querystring')

var server = http.createServer();

var htmlDir = __dirname + '/html/';             // 父目录下的html文件夹

server.on('request', function (req, res) {
    var urlStr = url.parse(req.url);
    switch (urlStr.pathname) {
        case '/':
            sendData(htmlDir + 'index.html', req, res);
            break;

        case '/user':
            sendData(htmlDir + 'user.html', req, res);
            break;

        case '/login':
            sendData(htmlDir + 'login.html', req, res);
            break;

        case '/login/check':
            console.log(req.method)                            // 打印返回方式，get/post
            // get ******************************************************************************************************
            console.log(querystring.parse(urlStr.query));      // 打印提交的内容，get正常，post是{}，需要用下面的if判断转译


            // post *****************************************************************************************************
            if (req.method.toUpperCase() == 'POST') {            // 返回方式转成全大写如果全等于 'POST'
                var aaa = '';                                    // 定义一个变量 aaa
                req.on('data',function (chunk) {                 // data 事件，从缓冲区中不断的读数据
                    aaa+=chunk                                   // 将缓冲区中读取的数据添加到 aaa 中
                })
                req.on('end',function () {                       // end 事件，读取完毕
                    // console.log(aaa)
                    console.log(querystring.parse(aaa))          // 转译成和 get 一样的对象
                })
            }
            break;

        default:
            sendData(htmlDir + 'err.html', req, res);
            break;
    }
});

function sendData(file,req,res) {
    fs.readFile(file,function (err,data) {
        if(err){
            res.writeHead(404, {
                'content-type': 'text/html;charset=utf-8'
            });
            res.end('<p>地址不正确</p>')
        }else{
            res.writeHead(200, {
                'content-type': 'text/html;charset=utf-8'
            });
            res.end(data)
        }
    })
}

server.listen(9010, 'localhost');